GWAS 분석 사전 준비 절차
0. 개요
.bsc → .ped/.map 파일 변환1. Genotype data (유전자형 데이터) 준비
입력 파일(.bsc)을 GenomeStudio의 PLINK 플러그인을 이용하여 최종 산출물(.ped, .map)로 변환시키는 과정이 필요하다.
아래 링크에서 플러그인을 내려받아 설치한다.
사이트 접속: https://sapac.support.illumina.com/downloads/genomestudio-2-0-plug-ins.html 사이트 열기
설치 순서
- 다운로드 받은 파일 압축을 해제
SetupPLINKInputReport_2.1.4_GS2.msi더블 클릭 → installer 실행- installer 안내에 따라 Next → Next → Next → Close 클릭
전제: PLINK Input Report Plug-in이 설치되어 있어야 하며, GenomeStudio 프로젝트에 NIAS_ibv3_296ea.bsc가 로드 되어있어야 한다. NIAS_ibv3_296ea.bsc 파일을 더블클릭하면 된다.
내보내기 단계
- GenomeStudio 상단 메뉴에서 Analysis → Reports → Report Wizard 를 연다.
- Custom Report 옵션을 선택하고 Next 를 클릭한다.
- Output Path(출력 경로)와 Report Name(보고서 이름)을 지정한 후 Finish 를 클릭한다.
- Progress Status 진행 창이 나타나는지 확인한다.
- 완료 후 “보고서를 볼지” 묻는 메시지가 뜨면 예(Y) 를 선택한다. 지정한 출력 경로가 메모장으로 열려 안내된다.
생성물 확인
- 표시된 출력 위치로 이동한다.
- 폴더명 규칙:
PLINK_분석날짜_시간(예:PLINK_120825_0322) - 해당 폴더 안에 다음 파일이 생성되었는지 확인한다.
-
NIAS_ibv3_296ea.ped— 유전자형 데이터 -
NIAS_ibv3_296ea.map— 마커 위치 데이터 -
기타
NIAS_ibv3_296ea.bat— PLINK 분석 실행용 배치 파일 -
기타
NIAS_ibv3_296ea.script— 입력 매개변수 스크립트
.ped, .map)이 준비되면, 이후 PLINK/PLINK2 명령으로 본격적인 GWAS 전처리를 진행할 수 있다!
개체 유전자형 정보 (.ped)
- 구조: 처음 6개 열(
FID,IID,PID,MID,SEX,PHENO)은 고정 정보이며, 그 뒤로 각 마커(SNP)의 대립유전자 쌍(예:A G)이 반복된다. - 구분자: 모든 값은 공백(스페이스)으로 구분되며, 헤더(제목 줄)가 없다.
- 결측치: 유전자형을 알 수 없는 경우, 대립유전자를
0으로 표기 (즉,0 0).
마커 위치 정보 (.map)
- 구조: 4개의 열로 고정되어 있다:
염색체 (CHR),마커 ID (SNP_ID),유전 거리 (CM),물리적 위치 (BP). - 구분자: 공백 또는 탭으로 구분되며, 헤더가 없다.
- 참고:
CHR=0또는BP=0은 해당 마커의 위치 정보를 모른다는 의미.
2. Phenotype data (표현형 데이터) 준비
제공된 NIAS_ibv3_296ea_pheno.csv 파일을 이용한다.
3. R/Rstudio 프로그램 다운로드 및 설치
먼저 데이터 분석의 핵심 엔진인 R을 설치한다.
사이트 접속: https://www.r-project.org/ R 공식 사이트 열기
- 홈페이지에서 download R을 클릭하여 CRAN Mirrors 페이지로 이동.
- 스크롤을 아래로 내려 Korea 부분을 찾고 Korea 항목 아래의 링크를 클릭.
- Download R for Windows → install R for the first time → Download R-4.5.1 for Windows를 차례로 클릭하여 설치 파일을 내려받는다.
설치 실행 안내
- ① R-4.5.1-win.exe를 더블 클릭한 후 실행(R) 클릭
- ② 설치 언어 선택 - 한국어 - 확인 클릭
- ③ 다음(N) 클릭
- ④ 설치할 위치 선택 - 경로는 원하는 대로 지정 (찾아보기(R) 클릭) 가능 - 다음(N) 클릭
- ⑤ 다음(N) 클릭
- ⑥ 다음(N) 클릭
- ⑦ 다음(N) 클릭
- ⑧ 다음(N) 클릭
- ⑨ 설치가 다 진행될 때까지 대기
- ⑩ 완료(F) 클릭
다음으로 R을 더 편리하게 사용할 수 있도록 도와주는 통합 개발 환경(IDE)인 RStudio를 설치한다.
사이트 접속: https://posit.co/download/rstudio-desktop/ Posit 사이트 열기
설치 실행 안내
- ① DOWNLOAD RSTUDIO DESKTOP FOR WINDOWS를 클릭하면 RStudio-2025.05.1.-513.exe 파일이 다운로드 된다.
- ② RStudio-2025.05.1.-513.exe 파일을 더블클릭하여 실행(R) 클릭
- ③ 다음(N) 클릭
- ④ 설치 위치 선택 - 경로는 원하는 대로 지정 (찾아보기 클릭) 가능 – 설치 클릭
- ⑤ 설치가 다 진행될 때 까지 대기
- ⑥ 마침 클릭
설치를 마친 뒤, RStudio를 빠르게 실행할 수 있도록 Windows 시작 화면에 고정한다.
- RStudio가 설치된 폴더로 이동하여 rstudio.exe 클릭한 후 마우스 오른쪽 버튼을 눌러 시작화면에 고정을 클릭하면 아래와 같이 시작 - rstudio 프로그램이 보인다.
기본 화면: rstudio를 실행하면 아래와 같이 4개의 패널(main panes)로 구성된 기본 화면이 열린다.
패널 재설정: 메뉴에서 View > Panes > Reset Pane Layout을 선택하면 기본 레이아웃으로 재설정할 수 있다.
소스 패널: 스크립트와 문서를 편집하는 영역.
- R 스크립트(
.R) 편집 및 실행. - 다른 코드 파일(예: Python, Shell)도 탭으로 열어 편집 가능.
- 탭 상단의 Run, Source 버튼으로 코드 실행.
RStudio 패널에서의 기본 작업 흐름
- 좌상단 Source Pane에서 코드 작성
- 코드를 선택 후 Ctrl+Enter 또는 Run으로 실행 → 좌하단 Console에서 수행
- 생성된 객체는 우상단 Environment에서 확인
- 그래프는 우하단 Plots에 표시, 파일은 Files에서 관리
R Project란? “하나의 폴더 = 하나의 작업 단위(프로젝트)”로 관리해 주는 기능으로, 프로젝트마다 작업 디렉토리와 설정이 자동으로 고정된다.
사전 준비: 유전자형/표현형 데이터를 작업할 폴더에 구성한다(사용자마다 경로는 다를 수 있음).
G:\Rhome\
└─ NIAS_ibv3_296ea\ (폴더 새로 생성)
├─ PLINK_120825_0322\ ← (복사)
└─ NIAS_ibv3_296ea_pheno.csv ← (복사)
└─ ... ← 분석 관련 파일들
설정 단계
- ① RStudio → File > New Project > Existing Directory 클릭
- ② Browse 클릭 →
G:\Rhome\NIAS_ibv3_296ea\PLINK_120825_0322선택 후 Open - ③ 새로 생성된
.Rproj파일이 열리면서, 우하단 Files/Plots/Packages/Help 패널의 Files 탭 기준 경로(작업 디렉토리)가 프로젝트 파일이 생성된 위치로 자동 설정된다. 프로젝트 디렉토리 이름(예:PLINK_120825_0322)이 프로젝트 파일명으로 자동 지정된다.
작업 팁
- 프로젝트 파일 code>.Rproj를 열면 working directory가 자동 설정되므로,
setwd()를 별도로 호출할 필요가 없다. - 데이터/스크립트/결과물을 프로젝트 폴더 내부에 두고, 상대 경로(예:
data/file.csv)를 사용하는 것이 재현성에 유리하다. - 프로젝트 최상단에
README.md나scripts/,data/,output/폴더와 같이 나눠 두면 관리가 쉬워진다.
4. plink2 프로그램 다운로드 및 설치
목표: 최신 plink2 실행 파일을 내려받아 압축 해제 후, PATH에 등록하고 RStudio 터미널에서 동작을 확인한다.
사이트 접속: https://www.cog-genomics.org/plink/2.0/ plink2 사이트 열기
- ① https://www.cog-genomics.org/plink/2.0/ 접속
- ② Alpha 6.21 (6 Aug) build에서 자신의 시스템에 맞는 빌드(Windows 64-bit 또는 32-bit) 클릭 →
plink2_win64_20250806.zip파일이 다운로드된다. 참고: Alpha 6.23 (24 Aug)로 업데이트됨 (2025.9.5.기준)최신 빌드를 선택하면 파일명이plink2_win64_20250824.zip처럼 날짜가 달라질 수 있다. - 시작 버튼 클릭 → ⚙ 설정(Settings)
- 시스템(System) → 정보(About)
- 디바이스 사양(Device specifications)의 시스템 종류(System type) 확인
- 예: 64비트 운영 체제, x64 기반 프로세서 → 64-bit 빌드
- 예: 32비트 운영 체제, x86 기반 프로세서 → 32-bit 빌드
- ③ 다운로드한 압축 파일(
plink2_win64_20250806.zip)의 압축을 풀면plink2.exe및vcf_subset.exe가 생성된다. - ④
plink2.exe가 있는 경로를 시스템 환경 변수 PATH에 추가한다. 유전체 매뉴얼 v6 p.69~73 참조 - ⑤ RStudio를 연 뒤, 좌하단 Console/Terminal 패널의 Terminal 탭에서
plink2를 입력하여 실행되는지 확인한다 (또는plink2 --version입력).
Windows 10/11에서 시스템 종류 확인
제어판 또는 설정의 고급 시스템 설정 > 환경 변수에서 시스템 변수의 Path 편집 → plink2.exe가 있는 폴더 경로 추가 → 확인.
5. R package 설치
PLINK_120825_0322.Rproj파일을 더블 클릭하면 RStudio가
자동으로 열린다. 분석에 필요한 R package들을 설치하기 위해 다음의 R
script를 실행한다.
분석에 필요한 R package 설치 스크립트
아래 R 코드를 복사한 후 Source Pane 에 붙여넣고 실행( Ctrl + Enter 또는 Run 클릭)하면, 분석에서 사용하는 패키지를 자동으로 검사 → 설치 → 로딩한다.
# ------------------------------------------------------------
# R package one-shot installer for this document
# - CRAN: install.packages()
# - Bioconductor: BiocManager::install()
# ------------------------------------------------------------
# 0) 권장 CRAN 미러 설정 및 병렬 빌드 코어 설정
options(repos = c(CRAN = "https://cloud.r-project.org"))
NCPU <- max(1L, parallel::detectCores(logical = TRUE) - 1L)
# 1) R 스크립트 전반에 실제로 사용되는 패키지 목록
cran_pkgs <- c(
"readr","dplyr","ggplot2","tibble","stringr",
"qqman","CMplot","genio","sommer","lme4breeding"
)
bioc_pkgs <- c(
"GENESIS","GWASTools","BiocParallel"
)
# 2) BiocManager 준비
if (!requireNamespace("BiocManager", quietly = TRUE)) {
install.packages("BiocManager", Ncpus = NCPU)
}
# 3) 설치 헬퍼
install_if_missing <- function(pkgs, installer, ...) {
need <- pkgs[!vapply(pkgs, requireNamespace, logical(1), quietly = TRUE)]
if (length(need)) {
message("Installing: ", paste(need, collapse = ", "))
installer(need, ask = FALSE, Ncpus = NCPU, ...)
} else {
message("All already installed: ", paste(pkgs, collapse = ", "))
}
}
# 4) 설치 실행
install_if_missing(cran_pkgs, install.packages)
install_if_missing(bioc_pkgs, BiocManager::install, update = FALSE)
# 5) 로딩 & 버전 리포트
all_pkgs <- c(cran_pkgs, bioc_pkgs)
invisible(lapply(all_pkgs, function(p) suppressPackageStartupMessages(
library(p, character.only = TRUE)
)))
ver <- vapply(all_pkgs, function(p) as.character(utils::packageVersion(p)), character(1))
pkg_df <- data.frame(
package = all_pkgs,
version = ver,
check.names = FALSE,
stringsAsFactors = FALSE
)
print(pkg_df, row.names = FALSE)#> package version
#> readr 2.1.5
#> dplyr 1.1.4
#> ggplot2 3.5.2
#> tibble 3.3.0
#> stringr 1.5.1
#> qqman 0.1.9
#> CMplot 4.5.1
#> genio 1.1.2
#> sommer 4.4.3
#> lme4breeding 1.0.70
#> GENESIS 2.38.0
#> GWASTools 1.54.0
#> BiocParallel 1.42.1